package me.luger.project.fof.entity;


import me.luger.core.dao.nutz.entity.BaseEntity;
import org.nutz.dao.entity.annotation.*;
import com.alibaba.fastjson.annotation.JSONField;

import java.io.Serializable;
import java.util.Date;

@Table("fof_fund_indicator")
public class FofFundIndicator extends BaseEntity implements Serializable{
private static final long serialVersionUID=1L;


    /**
     * 唯一自增ID
     */
    @Id
    @Column("id")
    @Comment("唯一自增ID")
    @ColDefine(type = ColType.INT, width = 10)
    private Integer id;
    /**
     * 1:基金 2：FOF
     */
    @Column("type")
    @Comment("1:基金 2：FOF")
    @ColDefine(type = ColType.INT, width = 3)
    private Integer type;
    /**
     * 基金或者FOF唯一编号
     */
    @Column("fId")
    @Comment("基金或者FOF唯一编号")
    @ColDefine(type = ColType.INT, width = 10)
    private Integer fid;
    /**
     * 单位净值
     */
    @Column("unitNav")
    @Comment("单位净值")
    @ColDefine(customType = "DOUBLE", width = 255)
    private Double unitNav;
    /**
     * 年化收益率
     */
    @Column("yieldAnnually")
    @Comment("年化收益率")
    @ColDefine(customType = "DOUBLE", width = 255)
    private Double yieldAnnually;
    /**
     * 近一个月收益率
     */
    @Column("yield1m")
    @Comment("近一个月收益率")
    @ColDefine(customType = "DOUBLE", width = 255)
    private Double yield1m;
    /**
     * 近三个月收益率
     */
    @Column("yield3m")
    @Comment("近三个月收益率")
    @ColDefine(customType = "DOUBLE", width = 255)
    private Double yield3m;
    /**
     * 近六个月收益率
     */
    @Column("yield6m")
    @Comment("近六个月收益率")
    @ColDefine(customType = "DOUBLE", width = 255)
    private Double yield6m;
    /**
     * 近一年收益率
     */
    @Column("yield1y")
    @Comment("近一年收益率")
    @ColDefine(customType = "DOUBLE", width = 255)
    private Double yield1y;
    /**
     * 近三年收益率
     */
    @Column("yield3y")
    @Comment("近三年收益率")
    @ColDefine(customType = "DOUBLE", width = 255)
    private Double yield3y;
    /**
     * 夏普比率
     */
    @Column("sharpRatio")
    @Comment("夏普比率")
    @ColDefine(customType = "DOUBLE", width = 255)
    private Double sharpRatio;
    /**
     * 卡玛比率
     */
    @Column("kumarRatio")
    @Comment("卡玛比率")
    @ColDefine(customType = "DOUBLE", width = 255)
    private Double kumarRatio;
    /**
     * 偏度
     */
    @Column("skewness")
    @Comment("偏度")
    @ColDefine(customType = "DOUBLE", width = 255)
    private Double skewness;
    /**
     * 峰度
     */
    @Column("kurtosis")
    @Comment("峰度")
    @ColDefine(customType = "DOUBLE", width = 255)
    private Double kurtosis;
    /**
     * 年化波动率
     */
    @Column("volatilityAnnually")
    @Comment("年化波动率")
    @ColDefine(customType = "DOUBLE", width = 255)
    private Double volatilityAnnually;
    /**
     * 最大回撤
     */
    @Column("drawdown")
    @Comment("最大回撤")
    @ColDefine(customType = "DOUBLE", width = 255)
    private Double drawdown;
    /**
     * 月度胜率
     */
    @Column("winningRatioMonthly")
    @Comment("月度胜率")
    @ColDefine(customType = "DOUBLE", width = 255)
    private Double winningRatioMonthly;
    /**
     * 日期
     */
    @Column("navDate")
    @Comment("日期")
    @ColDefine(type = ColType.DATE, width = 10)
    @JSONField (format="yyyy-MM-dd")
    private Date navDate;
    /**
     * 累计净值
     */
    @Column("accumulateNav")
    @Comment("累计净值")
    @ColDefine(customType = "DOUBLE", width = 255)
    private Double accumulateNav;
    /**
     * 累计净值当日涨跌值
     */
    @Column("accumulateUpDown")
    @Comment("累计净值当日涨跌值")
    @ColDefine(customType = "DOUBLE", width = 255)
    private Double accumulateUpDown;

    public void setId(Integer id){
        this.id=id;
    }
    public Integer getId(){
        return this.id;
    }

    public void setType(Integer type){
        this.type=type;
    }
    public Integer getType(){
        return this.type;
    }

    public void setFid(Integer fid){
        this.fid=fid;
    }
    public Integer getFid(){
        return this.fid;
    }

    public void setUnitNav(Double unitNav){
        this.unitNav=unitNav;
    }
    public Double getUnitNav(){
        return this.unitNav;
    }

    public void setYieldAnnually(Double yieldAnnually){
        this.yieldAnnually=yieldAnnually;
    }
    public Double getYieldAnnually(){
        return this.yieldAnnually;
    }

    public void setYield1m(Double yield1m){
        this.yield1m=yield1m;
    }
    public Double getYield1m(){
        return this.yield1m;
    }

    public void setYield3m(Double yield3m){
        this.yield3m=yield3m;
    }
    public Double getYield3m(){
        return this.yield3m;
    }

    public void setYield6m(Double yield6m){
        this.yield6m=yield6m;
    }
    public Double getYield6m(){
        return this.yield6m;
    }

    public void setYield1y(Double yield1y){
        this.yield1y=yield1y;
    }
    public Double getYield1y(){
        return this.yield1y;
    }

    public void setYield3y(Double yield3y){
        this.yield3y=yield3y;
    }
    public Double getYield3y(){
        return this.yield3y;
    }

    public void setSharpRatio(Double sharpRatio){
        this.sharpRatio=sharpRatio;
    }
    public Double getSharpRatio(){
        return this.sharpRatio;
    }

    public void setKumarRatio(Double kumarRatio){
        this.kumarRatio=kumarRatio;
    }
    public Double getKumarRatio(){
        return this.kumarRatio;
    }

    public void setSkewness(Double skewness){
        this.skewness=skewness;
    }
    public Double getSkewness(){
        return this.skewness;
    }

    public void setKurtosis(Double kurtosis){
        this.kurtosis=kurtosis;
    }
    public Double getKurtosis(){
        return this.kurtosis;
    }

    public void setVolatilityAnnually(Double volatilityAnnually){
        this.volatilityAnnually=volatilityAnnually;
    }
    public Double getVolatilityAnnually(){
        return this.volatilityAnnually;
    }

    public void setDrawdown(Double drawdown){
        this.drawdown=drawdown;
    }
    public Double getDrawdown(){
        return this.drawdown;
    }

    public void setWinningRatioMonthly(Double winningRatioMonthly){
        this.winningRatioMonthly=winningRatioMonthly;
    }
    public Double getWinningRatioMonthly(){
        return this.winningRatioMonthly;
    }

    public void setNavDate(Date navDate){
        this.navDate=navDate;
    }
    public Date getNavDate(){
        return this.navDate;
    }

    public void setAccumulateNav(Double accumulateNav){
        this.accumulateNav=accumulateNav;
    }
    public Double getAccumulateNav(){
        return this.accumulateNav;
    }

    public void setAccumulateUpDown(Double accumulateUpDown){
        this.accumulateUpDown=accumulateUpDown;
    }
    public Double getAccumulateUpDown(){
        return this.accumulateUpDown;
    }


}